#include <unistd.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int mypipe[2];
    pipe(mypipe);
    if (fork() == 0)
    {
        close(mypipe[1]);
        dup2(mypipe[0], 0);
        execlp("grep", "grep", "init", NULL);
    }
    else
    {
        close(mypipe[0]);
        dup2(mypipe[1], 1);
        execlp("ps", "ps", "aux", NULL);
    }
    return 0;
}